home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #2 / Ham Radio 2000 - Volume 2.iso / HAMV2 / MISC / HCAL-27 / FILSTRIP.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1997-01-28  |  4.5 KB  |  150 lines

  1. 10  'FILSTRIP - Filter, Stripline Bandpass - 08 FEB 96 rev. 27 SEP 96
  2. 20  IF EX$=""THEN EX$="EXIT"
  3. 30  CLS:KEY OFF
  4. 40  COLOR 7,0,1
  5. 50  U$="####.###"
  6. 60  '
  7. 70  '.....start
  8. 80  CLS:A=0:B=0:C=0:D=0:F=0
  9. 90  COLOR 15,2
  10. 100  PRINT " FILTERS, Stripline Bandpass for VHF/UHF";
  11. 110  PRINT TAB(57);"by George Murphy VE3ERP ";
  12. 120  COLOR 1,0:PRINT STRING$(80,223);:COLOR 7,0
  13. 130  LN=3:GOSUB 820   'DEFSTR wave diagram
  14. 140  LN=3:GOSUB 1010   'RENUM wave diagram
  15. 150  PRINT
  16. 160  GOSUB 1190        'preface
  17. 170  PRINT
  18. 180  COLOR 0,7:LOCATE ,24
  19. 190  PRINT " Press 1 to continue or 0 to EXIT...."
  20. 200  COLOR 7,0
  21. 210  Z$=INKEY$:IF Z$=""THEN 210
  22. 220  IF Z$="0"THEN CLS:RUN EX$
  23. 230  IF Z$="1"THEN 260
  24. 240  GOTO 210
  25. 250  '
  26. 260  '.....inputs
  27. 270  VIEW PRINT 16 TO 24:CLS:VIEW PRINT:LOCATE 16
  28. 280  PRINT "   Do you want dimensions in (c)entimetres or (i)nches?    (c/i)"
  29. 290  Y$=INKEY$:IF Y$=""THEN 290
  30. 300  IF Y$="i"THEN M=1:M$="in.":GOTO 340
  31. 310  IF Y$="c"THEN M=2.54:M$="cm.":GOTO 340
  32. 320  GOTO 290
  33. 330  '
  34. 340  VIEW PRINT 16 TO 24:CLS:VIEW PRINT:LOCATE 16
  35. 350  PRINT "   One of the dimensions a,b,c,d must be predetermined:
  36. 360  PRINT "   Press a letter to indicated which one...........
  37. 370  X$=INKEY$:IF X$=""THEN 370
  38. 380  IF X$="a"OR X$="b"OR X$="c"OR X$="d"THEN 390 ELSE 370
  39. 390  VIEW PRINT 16 TO 24:CLS:VIEW PRINT:LOCATE 16
  40. 400  IF X$="a"OR X$="b"THEN E$="Enclosure "ELSE E$="Conductor "
  41. 410  PRINT " ENTER: ";E$;"Dimension (";X$;").........(";M$;")";:INPUT Z
  42. 420  Z=Z/M
  43. 430  IF X$="a"THEN A=Z
  44. 440  IF X$="b"THEN B=Z
  45. 450  IF X$="c"THEN C=Z
  46. 460  IF X$="d"THEN D=Z
  47. 470  '.....calculate
  48. 480  IF C=0 AND A<>0 THEN C=A*0.25:GOTO 470
  49. 490  IF A=0 AND C<>0 THEN A=C/0.25:GOTO 470
  50. 500  IF D=0 AND A<>0 THEN D=A*0.4 :GOTO 470
  51. 510  IF A=0 AND D<>0 THEN A=D/0.4 :GOTO 470
  52. 520  IF B=0 AND A<>0 THEN B=A*2  :GOTO 470
  53. 530  IF A=0 AND B<>0 THEN A=B/2  :GOTO 470
  54. 540  '
  55. 550  '.....print results
  56. 560  VIEW PRINT 16 TO 24:CLS:VIEW PRINT:LOCATE 16
  57. 570  J=4:K=42
  58. 580  PRINT TAB(J)"Enclosure dim.(a)...";USING U$;A*M;:PRINT " ";M$;
  59. 590  PRINT TAB(K)"Enclosure dim.(a)...";USING U$;A*M;:PRINT " ";M$
  60. 600  PRINT TAB(J)"Enclosure dim.(b)...";USING U$;B*M;:PRINT " ";M$;
  61. 610  PRINT TAB(K)"Enclosure dim.(b)...";USING U$;B*M;:PRINT " ";M$
  62. 620  PRINT TAB(J)"Conductor dim.(c)...";USING U$;C*M;:PRINT " ";M$;
  63. 630  PRINT TAB(K)"Conductor dim.(c)...";USING U$;C*M;:PRINT " ";M$
  64. 640  PRINT TAB(J)"Conductor dim.(d)...";USING U$;D*M;:PRINT " ";M$;
  65. 650  PRINT TAB(K)"Conductor dim.(d)...";USING U$;D*M;:PRINT " ";M$
  66. 660  '
  67. 670  INPUT " ENTER: Centre Frequency (MHz) of desired passband ";F
  68. 680  VIEW PRINT 20 TO 24:CLS:VIEW PRINT:LOCATE 20
  69. 690  PRINT TAB(J)"Centre Frequency....";USING U$;F;:PRINT " Mhz";
  70. 700  PRINT TAB(K)"Centre Frequency....";USING U$;F;:PRINT " Mhz"
  71. 710  '
  72. 720  '.....conductor dimensions
  73. 730  L3A=2808/F*0.65:LA=L3A*0.25
  74. 740  L3B=5616/F*0.5:LB=L3B*0.15
  75. 750  PRINT TAB(J)"Length L3...........";USING U$;L3A*M;:PRINT " ";M$;
  76. 760  PRINT TAB(K)"Length L3...........";USING U$;L3B*M;:PRINT " ";M$
  77. 770  PRINT TAB(J)"Length L1, L2.......";USING U$;LA*M;:PRINT " ";M$;
  78. 780  PRINT TAB(K)"Length L1, L2.......";USING U$;LB*M;:PRINT " ";M$
  79. 790  GOTO 1320   'end
  80. 800  END
  81. 810  '
  82. 820  '.....diagrams
  83. 830  LOCATE LN
  84. 840  T=4
  85. 850  COLOR 0,7
  86. 860  LOCATE ,T:PRINT "                  in                "
  87. 870  LOCATE ,T:PRINT "    a             VARPTRMOTORCOLOR               "
  88. 880  LOCATE ,T:PRINT " KEYTHENTHENTHENTHENTHENCLOSE    KEYTHENTHENTHENTHENTHEN<0xB5!> PSETTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENCLOSE "
  89. 890  LOCATE ,T:PRINT " OPEN     OPEN    OPEN     CLSBSAVE'             OPEN "
  90. 900  LOCATE ,T:PRINT " OPEN  c  OPEN    PRESETSOUNDSOUNDL1SOUNDSOUND'   L3     C1  OPEN "
  91. 910  LOCATE ,T:PRINT " OPEN dCSRLIN  OPENb   INKEY$CSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINSOUNDSOUND<0xB4!>BLOADSOUNDSOUND<0xB6!> "
  92. 920  LOCATE ,T:PRINT " OPEN     OPEN    PRESETSOUNDSOUNDL2SOUNDSOUNDCOLOR              OPEN "
  93. 930  LOCATE ,T:PRINT " OPEN     OPEN    OPEN     VARPTRMOTORCOLOR             OPEN "
  94. 940  LOCATE ,T:PRINT " SCREENTHENTHENFNTHENTHENLOAD    SCREENTHENTHENTHENTHENTHEN<0xB5!> PSETTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENLOAD "
  95. 950  LOCATE ,T:PRINT "    CALL             CLSBSAVE'               "
  96. 960  LOCATE ,T:PRINT "   \\\            out               "
  97. 970  LOCATE ,T:PRINT "   QUARTER-WAVE STRIPLINE FILTER    "
  98. 980  COLOR 7,0
  99. 990  RETURN
  100. 1000  '
  101. 1010  LOCATE LN
  102. 1020  T=42
  103. 1030  COLOR 0,7
  104. 1040  LOCATE ,T:PRINT "                  in                "
  105. 1050  LOCATE ,T:PRINT "    a             VARPTRMOTORCOLOR               "
  106. 1060  LOCATE ,T:PRINT " KEYTHENTHENTHENTHENTHENCLOSE    KEYTHENTHENTHENTHENTHEN<0xB5!> PSETTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENCLOSE "
  107. 1070  LOCATE ,T:PRINT " OPEN     OPEN    OPEN     CLSBSAVE'             OPEN "
  108. 1080  LOCATE ,T:PRINT " OPEN  c  OPEN    PRESETSOUNDSOUNDL1SOUNDSOUND'   L3         OPEN "
  109. 1090  LOCATE ,T:PRINT " OPEN dCSRLIN  OPENb   INKEY$CSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINCSRLINOFF "
  110. 1100  LOCATE ,T:PRINT " OPEN     OPEN    OPEN          CALL   VARPTRSOUNDSOUNDL2SOUNDSOUND<0xB6!> "
  111. 1110  LOCATE ,T:PRINT " OPEN     OPEN    OPEN       C1THENINSTRTHEN VARPTRMOTORCOLOR     OPEN "
  112. 1120  LOCATE ,T:PRINT " SCREENTHENTHENFNTHENTHENLOAD    SCREENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENSTEPTHENTHEN<0xB5!> PSETTHENTHENTHENTHENTHENLOAD "
  113. 1130  LOCATE ,T:PRINT "    CALL                     CLSBSAVE'       "
  114. 1140  LOCATE ,T:PRINT "   \\\                    out       "
  115. 1150  LOCATE ,T:PRINT "     HALF-WAVE STRIPLINE FILTER     "
  116. 1160  COLOR 7,0
  117. 1170  RETURN
  118. 1180  '
  119. 1190  '.....preface
  120. 1200  T=8
  121. 1210  PRINT TAB(T);
  122. 1220  PRINT "This program does the calculations associated with the discussion"
  123. 1230  PRINT TAB(T);
  124. 1240  PRINT CHR$(34);"VHF and UHF Bandpass Filters";CHR$(34);" in the ARRL ";
  125. 1250  PRINT "ELECTRONICS DATA BOOK,"
  126. 1260  PRINT TAB(T);
  127. 1270  PRINT "2nd Edition, pages 5-14 and 5-15. The discussion describes other"
  128. 1280  PRINT TAB(T);
  129. 1290  PRINT "critical design factors and selection of capacitor C1."
  130. 1300  RETURN
  131. 1310  '
  132. 1320  '.....end
  133. 1330  GOSUB 1370
  134. 1340  GOTO 70
  135. 1350  END
  136. 1360  '
  137. 1370  'HARDCOPY
  138. 1380  GOSUB 1490:LOCATE 25,2:COLOR 14,6
  139. 1390  PRINT " Press 1 to print screen, 2 to print screen & ";
  140. 1400  PRINT "advance paper, or 3 to continue.";:COLOR 7,0
  141. 1410  Z$=INKEY$:IF Z$="3"THEN GOSUB 1490:RETURN
  142. 1420  IF Z$="1"OR Z$="2"THEN GOSUB 1490:GOTO 1440
  143. 1430  GOTO 1410
  144. 1440  FOR QX=1 TO 24:FOR QY=1 TO 80
  145. 1450  LPRINT CHR$(SCREEN(QX,QY));
  146. 1460  NEXT QY:NEXT QX
  147. 1470  IF Z$="2"THEN LPRINT CHR$(12)
  148. 1480  GOTO 1380
  149. 1490  LOCATE 25,1:PRINT STRING$(80,32);:RETURN
  150.